$(function () {
  // 获取分类数据渲染分类下拉菜单
  cateInit();
  postInit();

  function cateInit() {
    $.ajax({
      url: bignews.category_list,
      success(res) {
        console.log(res);
        let htmlStr = template('cateTemp', res);
        $('.category').html(htmlStr);
      }
    });
  }

  function postInit() {
    let postId = itcast.getArguments(location.search).id;
    // 编辑页面需要获取旧文章数据
    $.ajax({
      url: bignews.article_search,
      data: {
        id: postId
      },
      success(res) {
        console.log(res);
        // 文章数据获取完毕
        // 将旧文章的数据渲染到页面上
        $('.category').val(res.data.categoryId);
        // 恢复标题输入框
        $('#inputTitle').val(res.data.title);
        // 恢复主要内容
        $('#articleContent').val(res.data.content);
        // 恢复封面
        $('.article_cover').attr('src', res.data.cover);
        // 恢复日期
        $('#articleDate').val(res.data.date);
      }
    });
  }

  $('#inputCover').on('change', function () {
    // 1.拿到选择的文件
    let myFile = $('#inputCover')[0].files[0];
    // 2.将文件转换为url
    let url = URL.createObjectURL(myFile);
    // 3.赋值给img标签
    $('.article_cover').attr('src', url);
  });

  $('.btn-edit').on('click', function () {
    submit('已发布');
  });
  $('.btn-draft').on('click', function () {
    submit('草稿');
  });
  function submit(state) {
    // console.log(state);
    // 需要处理表单数据
    // 带有封面，用FormData实现
    let data = new FormData($('#form')[0]);
    // 剩下有三个数据需要额外处理 id / state / content
    let postId = itcast.getArguments(location.search).id;
    data.append('id', postId);
    // 用富文本框的函数获取其中的数据
    // 如果整个页面不止一个富文本框，可以通过get函数获取某个富文本框
    // tinymce.get('#articleContent').getContent();
    data.append('content', tinymce.activeEditor.getContent());
    data.append('state', state);

    $.ajax({
      type: 'post',
      url: bignews.article_edit,
      data,
      contentType: false,
      processData: false,
      success(res) {
        console.log(res);
        if (res.code == 200) {
          location = './article_list.html';
        }
      }
    });
  }
})